//��� ������ ������. JavaFX179Labs.src.javafx179labs.Safiullin.lab1;
//�������
package javafx179labs.Safiullin.lab1;

import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.text.Text;
import javafx.scene.text.Font;
import javafx.scene.paint.Color;
import javafx.scene.shape.Ellipse;
import javafx.scene.effect.DropShadow;
import javafx.scene.effect.GaussianBlur;
import javafx.scene.shape.Polygon;
import javafx.scene.effect.MotionBlur;
import javafx.scene.effect.Reflection;
import javafx.scene.effect.Glow;
import javafx.scene.shape.Rectangle;
import javafx.scene.effect.PerspectiveTransform;
import javafx.scene.effect.Shadow;
import javafx.scene.shape.Line;
import javafx.scene.transform.Shear;
import javafx.scene.transform.Rotate;
import javafx.scene.transform.Scale;
import javafx.scene.shape.Circle;
import javafx.scene.shape.Arc;
import javafx.scene.shape.ArcType;
import javafx.scene.shape.Polyline;

/**
 * @author Safick
 */

Stage {
    title: "test1"
    width: 640
    height: 480
    scene: Scene {
        content: [
            Rectangle {

            effect:PerspectiveTransform {
                llx: 13.4, lly: 210.0
                lrx: 186.6, lry: 190.0
                ulx: 13.4, uly: -10.0
                urx: 186.6, ury: 10.0
            }

                x: 100, y: 301
                width: 140, height: 90
                fill: Color.CYAN
            }


            Ellipse {
                effect:DropShadow {
                 offsetX: 10
                 offsetY: 10
                 color: Color.BLACK
                 radius: 50
                }
                centerX: 200, centerY: 210
                radiusX: 120, radiusY: 75
                fill: Color.GREEN
            }
            Text {
                effect:GaussianBlur {
                    radius: 2
                }
                font : Font {
                    size : 26
                }
                x: 110
                y: 130
                fill:Color.RED
                content: "6BTI-2DB-179"
            }
            Text {
            effect:Reflection {
                fraction: 0.75
                topOffset: 0.0
                topOpacity: 0.5
                bottomOpacity: 0.0
            }
                font : Font {
                size: 24
                    }
                    x: 10, y: 30
                    content: "Reflection"
            }
            Ellipse {
                         effect:Glow {
                            level: 1
                    }


                centerX: 425, centerY: 310
                radiusX: 20, radiusY: 100
                fill: Color.MAGENTA
            }
            Polygon {
               effect:MotionBlur {
                               angle: 145
                               radius: 10
                       }
                points : [ 300,300, 350,270, 400,400 ]
                fill: Color.YELLOW
            }
        Text {
        effect:Shadow {
                        color: Color.BLACK
                        radius: 200 //Radius must be in the range [1,127]
                }

                font : Font {
                    size : 26
                }
                x: 510
                y: 130
                fill:Color.RED
                content: "JavaFX"
                          }

            Line {
            transforms:Rotate { pivotX : 0.0, pivotY : 0.0, angle: 15.0 }

                startX: 310, startY: 110
                endX: 430, endY: 110
                strokeWidth: 17
                stroke: Color.BLACK
           }
           Text {

        transforms:Scale { x : 1.0, y : 3.0 }

                font : Font {
                    size : 56
                }
                x: 250
                y: 50
                fill:Color.RED
                content: "Black Hole FX"
            }
                Circle {
                 transforms:Shear { x: 0.35, y : 0.23 }
                    centerX: 470, centerY: 300
                    radius: 40
                    fill: Color.BLUE
            }
                     Arc {

               transforms:Shear { x: 0.35, y : 0.5 }
                    centerX: 100, centerY: 400
                    radiusX: 70, radiusY: 115
                    startAngle: 18, length: 120
                    type: ArcType.OPEN
                    fill: Color.GREEN
            }
            Polyline {
             transforms:Rotate { pivotX : 0.0, pivotY : 0.0, angle: 25.0 }

                    points : [ 0,0, 300,400, 100,100 ]
                    strokeWidth: 2.0
                    stroke: Color.RED
            }
]
    }
}